1. Field of the Invention
This invention relates to the client/server computing environment, and particularly recording information about user activity in a client/server computing environment.
2. Description of the Related Art
As more enterprises begin to, or expand their use of, the Internet and the World Wide Web (the “web”) for business purposes, they need better information about the usage of their web sites (e.g., web server applications running on server computer systems) as well as better information about those accessing their web sites in order to improve their ability to do business.
Conventional systems for monitoring and analyzing web site activities tend to focus only on the final result of some activity and not the overall context in which the activity occurs. For example, some monitoring systems gather information about web site activity based on the outcome of a user's session, e.g., the information about a purchase made by a user of a web site enabled to process orders, but do not monitor interim steps, e.g., those products that a user began to purchase, but then canceled, or; products that were merely browsed.
Other monitoring systems focus on web traffic by maintaining web server logs or log files that record transactions or activities that take place on the web server. Web servers can passively gather access information about each user by observing and logging the data packets (e.g., transmission control protocol/internet protocol (TCP/IP) packets) exchanged between the web server and the user. An example of such information is an access (a “hit”) to a particular hypertext markup language (HTML) file on a web site. Some information about the user and their activity can be determined directly or inferentially from log files, but log file based analysis is generally limited to activities associated with the mechanics of web site use and hypertext transfer protocol (HTTP) transfer, not the business context within which the activity takes place.
Compounding the shortcoming of existing web site monitoring systems, particularly log file implementations, is the fact that enormous quantities of data are gathered, but not necessarily useful business information. Thus, massive log files must be processed to extract useful information, a very time consuming and computer system resource intensive process.
Accordingly, it is desirable to have a web site monitoring system that can capture useful business activities or events, and the business context in which those activities or events occur. This should be accomplished while minimizing any performance impact on web server processes or web server side data collection processes, particularly the user experience (e.g., the speed with which an HTML document is made available to a user after the user has requested the document, or the ability to handle multiple users). Also, the monitoring system should be easily integrateable into web server processes or web server side data collection processes, while minimizing the amount of data that must be collected, stored, and ultimately analyzed.